//==========================================================================
// Copyright (c) 2000-2008,  Elastos, Inc.  All Rights Reserved.
//==========================================================================
#ifndef __DDKTSTTIMER_H__
#define __DDKTSTTIMER_H__

typedef enum TmrTstCommand {
    TmrTst_DzTimer = 0,
    TmrTst_Dispose,
    TmrTst_Start,
    TmrTst_Restart,
    TmrTst_Cancel,
    TmrTst_Due,
    TmrTst_GetResidualTicks,
    TmrTst_DzMillisecondsToTicks,
    TmrTst_DzTicksToMilliseconds,
    TmrTst_DzGetSystemTime,
    TmrTst_DzSetSystemTime,
    TmrTst_Result,
} TmrTstCommand;

typedef struct _Control_Pack {
    uint_t      uTimerCount;
    uint_t      puRelativeDueTicks[1];
} ControlPack, *PControlPack;

typedef struct _Result_Pack {
    int         nRightCount;
    int         nCBCount;
} ResultPack, *PResultPack;
#endif // __DDKTSTTIMER_H__
